/**
* Copyright (c) 2015 UNI-TREND Co., Ltd.
* All rights reserved.  
*  
* @file        
* @brief     
* @version     1.0 
* @author      
* @Email       
* @date        2015-12-3
*/
#pragma once
#include "Assistant.h"

/**
* @brief: costomized by production
*/
const int CUSTOM_DEPTH_NUM = 4;
const int MEM_CUSTOM_DEPTH[CUSTOM_DEPTH_NUM] = {28,280,2800,28000};// unit = k

/**
* @brief:CSAcq
*/
class CSAcq
{
public:
    CSAcq();
    ~CSAcq();
    
    typedef enum
    {
        ACQ_MODE_NORMAL,
        ACQ_MODE_PKPK,
        ACQ_MODE_ERES,
        ACQ_MODE_ENVLP,
        ACQ_MODE_AVG,
        ACQ_MODE_MAX
    }E_ACQ_MODE;

    typedef enum
    {
        MEM_DEPTH_AUTO,
        MEM_DEPTH_CUSTOM,/**if custom, need use another array to confirm*/
        MEM_DEPTH_FULL,
        MEM_DEPTH_MAX
    }E_MEM_DEPTH;
    
private:
    E_ACQ_MODE  m_mode;
    E_MEM_DEPTH m_depth;
    int m_avgSegments;/** >=2 */
public:
    void SetMode(E_ACQ_MODE mode = CSAcq::ACQ_MODE_NORMAL);
    
};

